//
//  GLAnimation.h
//  Texture
//
//  Created by Yao Melo on 3/2/13.
//
//

#ifndef __Texture__GLAnimation__
#define __Texture__GLAnimation__

#include <iostream>
#include "Mathematics.h"
class GLAnimation
{
protected:
    double _start;
    double _duration;
    virtual void GetTransformTemplate(MATRIX& mOut,double timestamp)=0;
public:
    GLAnimation(double duration):_duration(duration),_start(-1){};
    virtual ~GLAnimation(){};
    //return value:the time is inside the animation window.
    bool GetTransform(MATRIX& mOut, double timestamp);
    void Start(double starTime);
};

#endif /* defined(__Texture__GLAnimation__) */
